package com.yanqu.road.entity.log.cross.hsisland;

import com.yanqu.road.entity.FieldTypeAnnotation;
import com.yanqu.road.entity.log.ServerBaseLog;
import com.yanqu.road.entity.log.maidian.BaseLogEntity;

@FieldTypeAnnotation(tableName = "t_l_ck_hs_island_explore", desc = "海神岛-探索日志", autoSave = true, dataUpload = true, eventName = "seagod_explore", uploadCk = true, isCross = true)
public class LogCrossHsIslandExplore extends ServerBaseLog {

    @FieldTypeAnnotation(desc = "活动ID", dataAttribute = "activityid", isIndex = true)
    private int activityId;

    @FieldTypeAnnotation(desc = "分组ID", dataAttribute = "group_id", isIndex = true)
    private int groupId;

    @FieldTypeAnnotation(desc = "商会ID", dataAttribute = "guild_id")
    private String unionId;

    @FieldTypeAnnotation(desc = "用户id", isIndex = true)
    private long userId;

    @FieldTypeAnnotation(desc = "海域ID", dataAttribute = "seagod_area")
    private int floorId;

    @FieldTypeAnnotation(desc = "海岛id", dataAttribute = "seagod_island")
    private int islandId;

    @FieldTypeAnnotation(desc = "消耗体力值", dataAttribute = "seagod_usepow")
    private int costEnergy;

    @FieldTypeAnnotation(desc = "探索位置(x,y)", dataAttribute = "seagod_explorepos")
    private String position;

    @FieldTypeAnnotation(desc = "事件ID", dataAttribute = "seagod_event")
    private int eventId;

    @FieldTypeAnnotation(desc = "获得海神积分", dataAttribute = "seagod_getscore")
    private long score;

    @FieldTypeAnnotation(desc = "获得奖励", dataAttribute = "seagod_get")
    private String reward;

    @FieldTypeAnnotation(desc = "当前点亮进度", dataAttribute = "seagod_lightpro")
    private int lightProgress;

    @FieldTypeAnnotation(desc = "当前探索进度", dataAttribute = "seagod_expro")
    private int exploreProgress;

    public LogCrossHsIslandExplore(int activityId, int groupId, String unionId, long userId, int floorId, int islandId, int costEnergy, String position, int eventId, long score, String reward, int lightProgress, int exploreProgress) {
        this.activityId = activityId;
        this.groupId = groupId;
        this.unionId = unionId;
        this.userId = userId;
        this.floorId = floorId;
        this.islandId = islandId;
        this.costEnergy = costEnergy;
        this.position = position;
        this.eventId = eventId;
        this.score = score;
        this.reward = reward;
        this.lightProgress = lightProgress;
        this.exploreProgress = exploreProgress;
    }

    @Override
    public long getUserId() {
        return userId;
    }
}
